<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
        // 一级作用域
        var gender = "男";
        function fn() {
            // 二级作用域

            // age? 
            // age 在fn内部是可以访问的，因为age是在fn作用域内声明的
            // 所以age在fn内部的任何地方都能访问
            console.log(age); // undefined

            // height? Uncaught ReferenceError: height is not defined
            // height 未定义，因为height实在fn中返回的匿名函数作用域声明的
            // 只有在该匿名函数内部才能访问，匿名函数外边不能访问
            // console.log(height);

            return function() {
                // 三级作用域
                var height = 180
            }

            var age = 18;
        }
    </script>
</body>
</html>